1

JS中到底都有哪些数据类型

基本数据类型 / 值类型

- number、 string、 boolean(true / false)、 null、 undefined
Symbol(es6) 

引用数据类型

object(对象): {}
{} 对象、[] 数组、 /^ $/ 正则  Tue Mar 08 2016 16: 17: 10 GMT + 0800 时间
function(函数)

Number

  • NaN typeof NaN : number NaN:not a number但是属于number数据类型的

  • 非严格转换:parseInt/parseFloat

  • 严格的转换:Number

  • 数字的常用方法toFixed(n):保留小数点后面n位

  • isNaN()用来检测是否为有效数字的方法

    console.log(parseInt("12px"));//->12
    console.log(parseInt("12px13"));//->12
    console.log(parseInt("px13"));//->NaN
    parseInt("0xA");   //returns   10
    parseInt("22.5");   //returns   22
    parseInt("blue");   //returns   NaN
    var num = 3.141592654;
    console.log(num.toFixed(2));//->3.14
    NaN==NaN // false 不相等

parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。基是由parseInt()方法的第二个参数指定的,示例如下:

parseInt("AF",   16);   //returns   175
parseInt("10",   2);   //returns   2
parseInt("10",   8);   //returns   8
parseInt("10",   10);   //returns   10

下面是使用parseFloat()方法的示例:

parseFloat("1234blue");   //returns   1234.0
parseFloat("0xA");   //returns   NaN
parseFloat("22.5");   //returns   22.5
parseFloat("22.34.5");   //returns   22.34
parseFloat("0908");   //returns   908
parseFloat("blue");   //returns   NaN

Boolean

  • 只有五个值(""、0、NaN、null、undefined)转换为布尔类型会变为false,其余的都是true

[] array

1、关于数组的增、删、改

(1) push:向数组的末尾增加新的内容

  • 返回值:新增加后数组的长度

  • 原来的数组已经发生了改变

    let ary = [1,2,3ary];
    let newAry = ary.push(100);
    console.log(ary,newAry);// newAry = 4 ,ary = [100]
    

(2)pop:删除向数组的末尾

  • 返回值:被删除的那一项的内容

  • 原有的数组发生改变

    let ary = [100,123,13];
    let newAry = ary.pop();
    console.log(ary,newAry);// newAry = [13] ,ary = [1,2]

(3)shift:删除数组中的第一项

  • 返回值:被删除的那一项的内容

  • 原有的数组发生改变

 let ary = [100,123,13];
    let newAry = ary.shift();
    console.log(ary,newAry);// newAry = [100] ,ary = [123,13]

(4)unshift:添加数组中的第一项

  • 返回值:添加后的新数组的长度

  • 原有的数组发生改变

 let ary = [100,123,13];
    let newAry = ary.unshift(100);
    console.log(ary,newAry);// newAry = 3 ,ary = [100,123,13]

(5)splice:增删改
删除

  • ary.splice(n,m) 从索引n开始,删除m个元素,把删除的内容以一个新数组的方式返回,原来的数组改变

  • ary.splice(n) 从索引n开始,删除到数组的末尾

  • ary.splice(0) 把原来的数组中每一项都删除掉(清空数组每一项),把之前的每一项的值以一个新的数组返回(把之前的数组克隆了一份一模一样的,这样的克隆会修改原来的数组)

  • ary.splice() 数组中一项都没有删除,返回的是一个空数组

修改

  • splice(n,m,x) 从索引n开始,删除m个,用x替换删除的部分,把删除的内容以一个新的数组返回,原来的数组改变

增加

  • splice(n,0,x) 从索引n开始,一个都不删除(返回结果是一个空数组),把x增加到索引n的前面,原来的数组改变

未完待续,持续更新


steven
421 声望23 粉丝

steven


下一篇 »
面试题总结